package com.moji.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;

import java.math.BigDecimal;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotEmpty;

/**
 * <p>
 * 流程审批表
 * </p>
 *
 * @author ccl
 * @since 2024-07-27
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="MjFlowConfig对象", description="流程审批表")
public class MjFlowConfig extends Model<MjFlowConfig> {

    private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "id")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty(value = "流程(规则)编码")
    private String flowCode;

    @NotEmpty(message = "流程(规则)不能为空")
    @ApiModelProperty(value = "流程(规则)名称")
    private String flowName;

    @ApiModelProperty(value = "价格比较")
    private String priceCompare;

    @ApiModelProperty(value = "价格")
    private BigDecimal price;

    @ApiModelProperty(value = "条件：大于、小于、等于")
    private String conditions;

    @ApiModelProperty(value = "提交人编码，逗号隔开")
    private String submitCode;

    @ApiModelProperty(value = "提交人名称，逗号隔开")
    private String submitName;

    @ApiModelProperty(value = "审核人编码，逗号隔开")
    private String auditCode;

    @ApiModelProperty(value = "审核人名称，逗号隔开")
    private String auditName;

    @ApiModelProperty(value = "审核角色编码，逗号隔开")
    private String roleCode;

    @ApiModelProperty(value = "审核角色名称，逗号隔开")
    private String roleName;

    @ApiModelProperty(value = "抄送角色编码，逗号隔开")
    private String sendCode;

    @ApiModelProperty(value = "抄送角色名称，逗号隔开")
    private String sendName;

    @ApiModelProperty(value = "流程类型：1-价格设置 2-价格调整 3-申请退款")
    private Integer flowType;

    @ApiModelProperty(value = "状态0 - 停用 1 - 启用")
    private Integer prOnoff;

    @ApiModelProperty(value = "操作人id")
    private String updateId;

    @ApiModelProperty(value = "创建人id")
    private String createId;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "更新时间")
    private Date updateTime;


    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
